home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung 2 / Power-Programmierung CD 2 (Tewi)(1994).iso / gnu / gnulib / ghostscr / makefile < prev    next >
Encoding:
Makefile  |  1991-02-04  |  23.9 KB  |  736 lines

  1. #    Copyright (C) 1989, 1990 Aladdin Enterprises.  All rights reserved.
  2. #    Distributed by Free Software Foundation, Inc.
  3. #
  4. # This file is part of Ghostscript.
  5. #
  6. # Ghostscript is distributed in the hope that it will be useful, but
  7. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  8. # to anyone for the consequences of using it or for whether it serves any
  9. # particular purpose or works at all, unless he says so in writing.  Refer
  10. # to the Ghostscript General Public License for full details.
  11. #
  12. # Everyone is granted permission to copy, modify and redistribute
  13. # Ghostscript, but only under the conditions described in the Ghostscript
  14. # General Public License.  A copy of this license is supposed to have been
  15. # given to you along with Ghostscript so you can know your rights and
  16. # responsibilities.  It should be in a file named COPYING.  Among other
  17. # things, the copyright notice and this notice must be preserved on all
  18. # copies.
  19.  
  20. # makefile for Ghostscript, Unix/cc/X11 configuration.
  21.  
  22. # ------------------------------- Options ------------------------------- #
  23.  
  24. ####### The following are the only parts of the file you should need to edit.
  25.  
  26. # ------ Generic options ------ #
  27.  
  28. # Define the default directory/ies for the runtime
  29. # initialization and font files.  Separate multiple directories with a :.
  30. # `pwd` means use the directory in which the 'make' is being done.
  31.  
  32. GS_LIB_DEFAULT=`pwd`:`pwd`/fonts
  33.  
  34. # Choose generic configuration options.
  35.  
  36. # -DDEBUG
  37. #    includes debugging features (-Z switch) in the code.
  38. #      Code runs substantially slower even if no debugging switches
  39. #      are set.
  40. # -DNOPRIVATE
  41. #    makes private (static) procedures and variables public,
  42. #      so they are visible to the debugger and profiler.
  43. #      No execution time or space penalty.
  44.  
  45. GENOPT=
  46.  
  47. # ------ Platform-specific options ------ #
  48.  
  49. # Define the other compilation flags.
  50. # Add -DBSD4_2 for 4.2bsd systems.
  51. # Add -DSYSV for System V.
  52.  
  53. CFLAGS=-O -xenix
  54.  
  55. # Define platform flags for ld.
  56. # Most Unix systems accept -X, but some don't.
  57. # Sun OS4.n needs -Bstatic.
  58.  
  59. LDPLAT=-xenix
  60.  
  61. # Define any extra libraries to link into the executable.
  62. # The default is for X Windows.
  63.  
  64. EXTRALIBS= -lX11 -lsocket -l2.3
  65.  
  66. # --------------------------- Choice of devices --------------------------- #
  67.  
  68. # Choose the device(s) to include.  See gdevs.mak for details.
  69.  
  70. DEVICES=x11
  71. DEVICE_OBJS=$(x11_)
  72.  
  73. # ---------------------------- End of options --------------------------- #
  74.  
  75. # Define the name of the makefile -- used in dependencies.
  76.  
  77. MAKEFILE=unix-cc.mak
  78.  
  79. # Define the extensions for the object and executable files.
  80.  
  81. OBJ=o
  82. XE=
  83.  
  84. # Define the ANSI-to-K&R dependency.
  85.  
  86. AK=ansi2knr$(XE)
  87.  
  88. # Define the directory separator and shell quote string.
  89.  
  90. DS=/
  91. Q=\"
  92.  
  93. # Define the compilation rules and flags.
  94.  
  95. CCFLAGS=$(GENOPT) $(CFLAGS)
  96.  
  97. .c.o:
  98. #    ./ansi2knr $*.c _temp_.c
  99. #    $(CC) $(CCFLAGS) -c _temp_.c
  100. #    mv _temp_.o $*.o
  101.     $(CC) $(CCFLAGS) -c $*.c
  102.     
  103. CCA=./ccgs "$(CC) $(CCFLAGS)" _temp_.c
  104. CCNA=$(CCA)
  105. CCINT=$(CCA)
  106.  
  107. # --------------------------- Generic makefile ---------------------------- #
  108.  
  109. # The remainder of the makefile (ghost.mak, gdevs.mak, and unixtail.mak)
  110. # is generic.  tar_gs concatenates all these together.
  111. #    Copyright (C) 1989, 1990 Aladdin Enterprises.  All rights reserved.
  112. #    Distributed by Free Software Foundation, Inc.
  113. #
  114. # This file is part of Ghostscript.
  115. #
  116. # Ghostscript is distributed in the hope that it will be useful, but
  117. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  118. # to anyone for the consequences of using it or for whether it serves any
  119. # particular purpose or works at all, unless he says so in writing.  Refer
  120. # to the Ghostscript General Public License for full details.
  121. #
  122. # Everyone is granted permission to copy, modify and redistribute
  123. # Ghostscript, but only under the conditions described in the Ghostscript
  124. # General Public License.  A copy of this license is supposed to have been
  125. # given to you along with Ghostscript so you can know your rights and
  126. # responsibilities.  It should be in a file named COPYING.  Among other
  127. # things, the copyright notice and this notice must be preserved on all
  128. # copies.
  129.  
  130. # Generic makefile for Ghostscript.
  131. # The platform-specific makefiles 'include' this file.
  132. # They define the following symbols:
  133. #    GS_LIB_DEFAULT - the default directory/ies for searching for the
  134. #        initialization and font files at run time.
  135. #    Q - the string that causes the shell to pass a " to a program
  136. #        (" on MS-DOS, \" on Unix).
  137. #    XE - the extension for executable files (e.g., null or .exe).
  138. #    OBJ - the extension for relocatable object files (e.g., o or obj).
  139. #    CCA - the ANSI C invocation for normal compilation.
  140. #    CCNA - the non-ANSI C invocation for files that on some platforms
  141. #        include in-line assembly code or other non-standard
  142. #        constructs.  Currently this is needed on every file that
  143. #        includes sstorei.h, and a few files that use Turbo C
  144. #        "short pointer" constructs.
  145. #    CCINT - the C invocation for compiling the main interpreter module,
  146. #        normally the same as CCNA: this is needed because the
  147. #        Borland compiler generates *worse* code for this module
  148. #        (but only this module) when optimization (-O) is turned on.
  149. #    AK - if source files must be converted from ANSI to K&R syntax,
  150. #        this is ansi2knr$(XE); if not, it is null.
  151. #    DS - the directory separator (/ or \).
  152. # The platform-specific makefiles must also include rules for creating
  153. #   ansi2knr$(XE) and genarch$(XE) from the corresponding .c files,
  154. #   and for making arch.h by executing genarch$(XE).  (This
  155. #   shouldn't really be necessary, but Turbo C and Unix C treat the -o
  156. #   switch slightly differently (Turbo C requires no following space,
  157. #   Unix C requires a following space), and I haven't found a way to capture
  158. #   the difference in a macro; also, Unix requires ./ because . may not be
  159. #   in the search path, whereas MS-DOS always looks in the current
  160. #   directory first.)
  161.  
  162. default: gs$(XE)
  163.  
  164. test: gt$(XE)
  165.  
  166. clean:
  167.     rm -f *.$(OBJ) *.a core gmon.out
  168.     rm -f *.dev gdevs.h gdevs.tl
  169.     rm -f t _temp_* _temp_*.* libc*.tl *.map *.sym
  170.     rm -f ansi2knr$(XE) genarch$(XE) arch.h gs$(XE)
  171.  
  172. # Note: Unix uses malloc.h and memory.h;
  173. # Turbo C uses alloc.h, stdlib.h, and mem.h.
  174. # 4.2bsd uses strings.h; other systems use string.h.
  175. # gcc on VMS doesn't have a math.h.
  176. # We handle this by using local include files called
  177. # malloc_.h, math_.h, memory_.h, and string_.h
  178. # that perform appropriate indirection.
  179.  
  180. # Auxiliary programs
  181.  
  182. arch.h: genarch$(XE)
  183.     .$(DS)genarch
  184.  
  185. # -------------------------------- Library -------------------------------- #
  186.  
  187. GX=$(AK) std.h gx.h
  188. GXERR=$(GX) gserrors.h
  189.  
  190. ###### High-level facilities
  191.  
  192. gschar.$(OBJ): gschar.c $(GXERR) \
  193.   gxfixed.h gxarith.h gxmatrix.h gzdevice.h gxdevmem.h gxfont.h gxchar.h gstype1.h gzpath.h gzcolor.h gzstate.h
  194.  
  195. gscolor.$(OBJ): gscolor.c $(GXERR) \
  196.   gxfixed.h gxmatrix.h gxdevice.h gzstate.h gzcolor.h gzht.h
  197.  
  198. gscoord.$(OBJ): gscoord.c $(GXERR) \
  199.   gxfixed.h gxmatrix.h gzdevice.h gzstate.h gscoord.h
  200.  
  201. gsdevice.$(OBJ): gsdevice.c $(GXERR) \
  202.   gxfixed.h gxmatrix.h gxbitmap.h gxdevmem.h gzstate.h gzdevice.h
  203.  
  204. gsfile.$(OBJ): gsfile.c $(GXERR) \
  205.   gsmatrix.h gxdevice.h gxdevmem.h
  206.  
  207. gsfont.$(OBJ): gsfont.c $(GXERR) \
  208.   gxdevice.h gxfixed.h gxmatrix.h gxfont.h gxfdir.h gzstate.h
  209.  
  210. gsimage.$(OBJ): gsimage.c $(GXERR) \
  211.   arch.h gxfixed.h gxarith.h gxmatrix.h gspaint.h gzcolor.h gzdevice.h gzpath.h gzstate.h gximage.h
  212.  
  213. gsim2out.$(OBJ): gsim2out.c $(GXERR) \
  214.   gsstate.h gsmatrix.h gscoord.h gxfixed.h gxtype1.h
  215.  
  216. gsline.$(OBJ): gsline.c $(GXERR) \
  217.   gxfixed.h gxmatrix.h gzstate.h gzline.h
  218.  
  219. gsmatrix.$(OBJ): gsmatrix.c $(GXERR) \
  220.   gxfixed.h gxarith.h gxmatrix.h
  221.  
  222. gsmisc.$(OBJ): gsmisc.c $(GX)
  223.  
  224. gspaint.$(OBJ): gspaint.c $(GX) \
  225.   gxfixed.h gxmatrix.h gspaint.h gzpath.h gzstate.h gzdevice.h gximage.h
  226.  
  227. gspath.$(OBJ): gspath.c $(GXERR) \
  228.   gxfixed.h gxmatrix.h gxpath.h gzstate.h
  229.  
  230. gspath2.$(OBJ): gspath2.c $(GXERR) \
  231.   gspath.h gxfixed.h gxmatrix.h gzstate.h gzpath.h gzdevice.h
  232.  
  233. gsstate.$(OBJ): gsstate.c $(GXERR) \
  234.   gxfixed.h gxmatrix.h gzstate.h gzcolor.h gzdevice.h gzht.h gzline.h gzpath.h
  235.  
  236. gstype1.$(OBJ): gstype1.c $(GXERR) \
  237.   gxarith.h gxfixed.h gxmatrix.h gxchar.h gxdevmem.h gxtype1.h gxfont1.h gzstate.h gzdevice.h gzpath.h
  238.  
  239. ###### Low-level facilities
  240.  
  241. gxcache.$(OBJ): gxcache.c $(GX) \
  242.   gserrors.h gxfixed.h gxmatrix.h gspaint.h gzdevice.h gzcolor.h gxdevmem.h gxfont.h gxfdir.h gxchar.h gzstate.h gzpath.h
  243.  
  244. gxcolor.$(OBJ): gxcolor.c $(GX) \
  245.   gxfixed.h gxmatrix.h gxdevice.h gzcolor.h gzht.h
  246.  
  247. gxdither.$(OBJ): gxdither.c $(GX) \
  248.   gxfixed.h gxmatrix.h gzstate.h gzdevice.h gzcolor.h gzht.h
  249.  
  250. gxdraw.$(OBJ): gxdraw.c $(GX) \
  251.   gxfixed.h gxmatrix.h gxbitmap.h gzcolor.h gzdevice.h gzstate.h
  252.  
  253. gxfill.$(OBJ): gxfill.c $(GXERR) \
  254.   gxfixed.h gxmatrix.h gxdevice.h gzcolor.h gzpath.h gzstate.h
  255.  
  256. gxht.$(OBJ): gxht.c $(GXERR) \
  257.   gxfixed.h gxmatrix.h gxbitmap.h gzstate.h gzcolor.h gzdevice.h gzht.h
  258.  
  259. gxpath.$(OBJ): gxpath.c $(GXERR) \
  260.   gxfixed.h gzpath.h
  261.  
  262. gxpath2.$(OBJ): gxpath2.c $(GXERR) \
  263.   gxfixed.h gxarith.h gzpath.h
  264.  
  265. gxstroke.$(OBJ): gxstroke.c $(GXERR) \
  266.   gxfixed.h gxarith.h gxmatrix.h gzstate.h gzcolor.h gzdevice.h gzline.h gzpath.h
  267.  
  268. ###### The "memory" device
  269.  
  270. gdevmem.$(OBJ): gdevmem.c $(AK) \
  271.   gs.h arch.h gxbitmap.h gsmatrix.h gxdevice.h gxdevmem.h
  272.     $(CCNA) gdevmem.c
  273.  
  274. ###### Files dependent on the set of installed devices.
  275. ###### Generating gdevs.h also generates gdevs.tl.
  276.  
  277. gdevs.h: gdevs.mak $(MAKEFILE) makefile
  278.     .$(DS)gsconfig $(DEVICES)
  279.  
  280. gdevs.$(OBJ): gdevs.c $(AK) gdevs.h
  281.  
  282. ###### On Unix, we pre-link all of the library except the back end.
  283. ###### On MS-DOS, we have to do the whole thing at once.
  284.  
  285. LIB=gschar.$(OBJ) gscolor.$(OBJ) gscoord.$(OBJ) gsdevice.$(OBJ) \
  286.  gsfile.$(OBJ) gsfont.$(OBJ) gsimage.$(OBJ) gsim2out.$(OBJ) \
  287.  gsline.$(OBJ) gsmatrix.$(OBJ) gsmisc.$(OBJ) \
  288.  gspaint.$(OBJ) gspath.$(OBJ) gspath2.$(OBJ) gsstate.$(OBJ) gstype1.$(OBJ) \
  289.  gxcache.$(OBJ) gxcolor.$(OBJ) gxdither.$(OBJ) gxdraw.$(OBJ) gxfill.$(OBJ) \
  290.  gxht.$(OBJ) gxpath.$(OBJ) gxpath2.$(OBJ) gxstroke.$(OBJ) \
  291.  gdevmem.$(OBJ) gdevs.$(OBJ)
  292.  
  293. # ------------------------------ Interpreter ------------------------------ #
  294.  
  295. ###### Utilities
  296.  
  297. GH=$(AK) ghost.h
  298.  
  299. ialloc.$(OBJ): ialloc.c $(AK) std.h alloc.h
  300.     $(CCNA) ialloc.c
  301.  
  302. idebug.$(OBJ): idebug.c $(GH) name.h
  303.  
  304. idict.$(OBJ): idict.c $(GH) alloc.h errors.h name.h store.h dict.h
  305.  
  306. iinit.$(OBJ): iinit.c $(GH) dict.h oper.h store.h
  307.  
  308. iname.$(OBJ): iname.c $(GH) alloc.h errors.h name.h store.h
  309.  
  310. iscan.$(OBJ): iscan.c $(GH) arch.h alloc.h dict.h errors.h name.h store.h stream.h scanchar.h
  311.  
  312. iutil.$(OBJ): iutil.c $(GH) errors.h alloc.h oper.h store.h gsmatrix.h gxdevice.h gzcolor.h
  313.  
  314. stream.$(OBJ): stream.c $(AK) std.h stream.h scanchar.h gxfixed.h gstype1.h
  315.  
  316. ### Level 2 utilities
  317.  
  318. i2num.$(OBJ): i2num.c $(GH) arch.h errors.h stream.h i2num.h i2btoken.h
  319.  
  320. i2scan.$(OBJ): i2scan.c $(GH) arch.h errors.h alloc.h store.h stream.h i2bseq.h i2btoken.h i2num.h
  321.  
  322. ###### Non-graphics operators
  323.  
  324. OP=$(GH) errors.h oper.h
  325.  
  326. zarith.$(OBJ): zarith.c $(OP) store.h
  327.  
  328. zarray.$(OBJ): zarray.c $(OP) alloc.h store.h sstorei.h
  329.     $(CCNA) zarray.c
  330.  
  331. zcontrol.$(OBJ): zcontrol.c $(OP) estack.h store.h sstorei.h
  332.     $(CCNA) zcontrol.c
  333.  
  334. zdict.$(OBJ): zdict.c $(OP) dict.h store.h
  335.  
  336. zfile.$(OBJ): zfile.c $(OP) alloc.h stream.h store.h gsmatrix.h gxdevice.h gxdevmem.h
  337.  
  338. zgeneric.$(OBJ): zgeneric.c $(OP) dict.h estack.h store.h
  339.  
  340. zmath.$(OBJ): zmath.c $(OP) store.h
  341.  
  342. zmisc.$(OBJ): zmisc.c $(OP) alloc.h dict.h store.h gstype1.h gxfixed.h
  343.  
  344. zpacked.$(OBJ): zpacked.c $(OP) store.h
  345.  
  346. zrelbit.$(OBJ): zrelbit.c $(OP) store.h sstorei.h dict.h
  347.     $(CCNA) zrelbit.c
  348.  
  349. zstack.$(OBJ): zstack.c $(OP) store.h sstorei.h
  350.     $(CCNA) zstack.c
  351.  
  352. zstring.$(OBJ): zstring.c $(OP) alloc.h store.h stream.h
  353.  
  354. ztype.$(OBJ): ztype.c $(OP) dict.h name.h stream.h store.h
  355.  
  356. zvmem.$(OBJ): zvmem.c $(OP) alloc.h state.h store.h gsmatrix.h gsstate.h
  357.  
  358. ### Level 2 non-graphics operators
  359.  
  360. z2bseq.$(OBJ): z2bseq.c $(OP) stream.h name.h i2btoken.h i2bseq.h
  361.  
  362. ###### Graphics operators
  363.  
  364. zchar.$(OBJ): zchar.c $(OP) gxmatrix.h gschar.h gstype1.h gxdevice.h gxfixed.h gxfont.h gxfont1.h gzpath.h gzstate.h alloc.h dict.h font.h estack.h state.h store.h
  365.  
  366. zcolor.$(OBJ): zcolor.c $(OP) alloc.h gsmatrix.h gsstate.h state.h store.h
  367.  
  368. zdevice.$(OBJ): zdevice.c $(OP) alloc.h state.h gsmatrix.h gsstate.h gxdevice.h store.h
  369.  
  370. zfont.$(OBJ): zfont.c $(OP) gsmatrix.h gxdevice.h gxfont.h gxfont1.h alloc.h font.h dict.h name.h state.h store.h
  371.  
  372. zgstate.$(OBJ): zgstate.c $(OP) alloc.h gsmatrix.h gsstate.h state.h store.h
  373.  
  374. zht.$(OBJ): zht.c $(OP) alloc.h estack.h gsmatrix.h gsstate.h state.h store.h
  375.  
  376. zmatrix.$(OBJ): zmatrix.c $(OP) gsmatrix.h state.h gscoord.h store.h
  377.  
  378. zpaint.$(OBJ): zpaint.c $(OP) alloc.h estack.h gsmatrix.h gspaint.h state.h store.h
  379.  
  380. zpath.$(OBJ): zpath.c $(OP) gsmatrix.h gspath.h state.h store.h
  381.  
  382. zpath2.$(OBJ): zpath2.c $(OP) alloc.h estack.h gspath.h state.h store.h
  383.  
  384. ### Level 2 graphics operators
  385.  
  386. z2path.$(OBJ): z2path.c $(OP) state.h stream.h i2num.h
  387.  
  388. ###### Linking
  389.  
  390. INT=ialloc.$(OBJ) idebug.$(OBJ) idict.$(OBJ) iinit.$(OBJ) iname.$(OBJ) \
  391.  interp.$(OBJ) iscan.$(OBJ) iutil.$(OBJ) stream.$(OBJ) \
  392.  zarith.$(OBJ) zarray.$(OBJ) zcontrol.$(OBJ) zdict.$(OBJ) zfile.$(OBJ) \
  393.  zgeneric.$(OBJ) zmath.$(OBJ) zmisc.$(OBJ) zpacked.$(OBJ) zrelbit.$(OBJ) \
  394.  zstack.$(OBJ) zstring.$(OBJ) ztype.$(OBJ) zvmem.$(OBJ) \
  395.  zchar.$(OBJ) zcolor.$(OBJ) zfont.$(OBJ) zdevice.$(OBJ) zgstate.$(OBJ) \
  396.  zht.$(OBJ) zmatrix.$(OBJ) zpaint.$(OBJ) zpath.$(OBJ) zpath2.$(OBJ)
  397.  
  398. INT2=i2num.$(OBJ) \
  399.  z2bseq.$(OBJ) \
  400.  z2path.$(OBJ)
  401.  
  402. # ----------------------------- Main program ------------------------------ #
  403.  
  404. # Utilities shared between platforms
  405.  
  406. gsmain.$(OBJ): gsmain.c $(GX) \
  407.   gsmatrix.h gxdevice.h
  408.  
  409. # Library test program driver
  410.  
  411. gt.$(OBJ): gt.c $(GX) \
  412.   gsmatrix.h gsstate.h gscoord.h gspaint.h gspath.h gxdevice.h
  413.  
  414. # Interpreter main program
  415.  
  416. interp.$(OBJ): interp.c $(GH) \
  417.   errors.h name.h dict.h oper.h store.h sstorei.h stream.h
  418.     $(CCINT) interp.c
  419.  
  420. gs.$(OBJ): gs.c $(GH) alloc.h store.h stream.h $(MAKEFILE)
  421.     $(CCA) -DGS_LIB_DEFAULT=$(Q)$(GS_LIB_DEFAULT)$(Q) gs.c
  422. #    Copyright (C) 1989, 1990 Aladdin Enterprises.  All rights reserved.
  423. #    Distributed by Free Software Foundation, Inc.
  424. #
  425. # This file is part of Ghostscript.
  426. #
  427. # Ghostscript is distributed in the hope that it will be useful, but
  428. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  429. # to anyone for the consequences of using it or for whether it serves any
  430. # particular purpose or works at all, unless he says so in writing.  Refer
  431. # to the Ghostscript General Public License for full details.
  432. #
  433. # Everyone is granted permission to copy, modify and redistribute
  434. # Ghostscript, but only under the conditions described in the Ghostscript
  435. # General Public License.  A copy of this license is supposed to have been
  436. # given to you along with Ghostscript so you can know your rights and
  437. # responsibilities.  It should be in a file named COPYING.  Among other
  438. # things, the copyright notice and this notice must be preserved on all
  439. # copies.
  440.  
  441. # makefile for Ghostscript device drivers.
  442.  
  443. # -------------------------------- Catalog ------------------------------- #
  444.  
  445. # It is possible to build Ghostscript with an arbitrary collection of
  446. # device drivers, although many drivers are supported only on a subset
  447. # of the target platforms.  The currently available drivers are:
  448.  
  449. # Displays:
  450. #    bgi    Borland Graphics Interface   [MS-DOS only]
  451. #    ega    EGA display   [MS-DOS only]
  452. #    ega_bios  EGA display using BIOS calls (very slow)   [MS-DOS only]
  453. #    mdb10    EIZO MDB-10 display (1024 x 768)   [MS-DOS only]
  454. #    sonyfb    Sony Microsystems monochrome display   [Sony only]
  455. #    sunview  SunView window system   [SunOS only]
  456. #    vga    VGA display   [MS-DOS only]
  457. #    x11    X Windows version 11, release >=3   [Unix only]
  458. # (NOTE: no more than one MS-DOS display driver may be included in
  459. #   any build.)
  460. # Printers:
  461. #    bj10e    Canon BubbleJet BJ10e  [MS-DOS only]
  462. #    deskjet  H-P DeskJet   [MS-DOS & Unix]
  463. #    epson    Epson dot matrix printers   [MS-DOS only]
  464. #    laserjet  H-P LaserJet   [MS-DOS & Unix]
  465. #    nwp533  Sony Microsystems NWP533 laser printer   [Sony only]
  466. # ###    paintjet  H-P PaintJet color printer [Unix, tested on SunOS only]
  467. # ###      (NOT INCLUDED IN THIS RELEASE)
  468.  
  469. # If you add drivers, it would be nice if you kept each list
  470. # in alphabetical order.
  471.  
  472. # Each platform-specific makefile should contain a pair of lines of the form
  473. #    DEVICES=<dev1> ... <devn>
  474. #    DEVICE_OBJS=$(<dev1>_) ... $(<devn>_)
  475. # where dev1 ... devn are the devices to be included in the build.
  476. # dev1 will be used as the default device.  Don't forget the _s!
  477. # On MS-DOS platforms, the first of these lines must appear *before*,
  478. # and the second *after*, the lines
  479. #    (!)include gdevs.mak
  480. #    (!)include ghost.mak
  481. # in the makefile.  On Unix systems, the two device definition lines
  482. # may appear anywhere in the makefile.
  483. #
  484. # The executable must be linked with all the files named in DEVICE_OBJS.
  485. # On MS-DOS platforms, this is done by constructing a file called gdevs.tl,
  486. # to get around the limit on the length of a DOS command line.
  487.  
  488. # ---------------------------- End of catalog ---------------------------- #
  489.  
  490. # If you want to add a new device driver, the examples below should be
  491. # enough of a guide to the correct form for the makefile rules.
  492.  
  493. # All device drivers depend on the following
  494. # (note that we include some indirect dependencies explicitly):
  495.  
  496. GDEV=$(AK) gs.h gx.h gsmatrix.h gxbitmap.h gxdevice.h
  497.  
  498. ###### ------------------- MS-DOS display devices ------------------- ######
  499.  
  500. GDEVPCFB=gdevpcfb.h $(GDEV)
  501.  
  502. gdevegaa.$(OBJ): gdevegaa.asm
  503.  
  504. ### -------------------------- The EGA device -------------------------- ###
  505.  
  506. ETEST=ega.$(OBJ) trace.$(OBJ) $(ega_)
  507. ega.exe: $(ETEST) libc$(MM).tl
  508.     tlink /m /l $(LIBDIR)\c0$(MM) @ega.tl @libc$(MM).tl
  509.  
  510. ega.$(OBJ): ega.c $(GDEV)
  511.  
  512. ega_=gdevega.$(OBJ) gdevegaa.$(OBJ)
  513. ega.dev: $(ega_)
  514.     .$(DS)gssetdev ega.dev $(ega_)
  515.  
  516. gdevega.$(OBJ): gdevpcfb.c gdevega.h $(GDEVPCFB)
  517.     cp gdevega.h gdevxxfb.h
  518.     $(CCNA) gdevpcfb
  519.     rm gdevxxfb.h
  520.     cp gdevpcfb.obj gdevega.obj
  521.  
  522. ega_bios_=gdevegab.$(OBJ) gdevegaa.$(OBJ)
  523. ega_bios.dev: $(ega_bios_)
  524.     .$(DS)gssetdev ega_bios.dev $(ega_bios_)
  525.  
  526. gdevegab.$(OBJ): gdevegab.c $(GDEVPCFB)
  527.     $(CCNA) $(D_EGA) $*
  528.  
  529. ### -------------------------- The VGA device -------------------------- ###
  530.  
  531. vga_=gdevvga.$(OBJ) gdevegaa.$(OBJ)
  532. vga.dev: $(vga_)
  533.     .$(DS)gssetdev vga.dev $(vga_)
  534.  
  535. gdevvga.$(OBJ): gdevpcfb.c gdevvga.h $(GDEVPCFB)
  536.     cp gdevvga.h gdevxxfb.h
  537.     $(CCNA) gdevpcfb
  538.     rm gdevxxfb.h
  539.     cp gdevpcfb.obj gdevvga.obj
  540.  
  541. ### ---------------------- The EIZO MDB-10 device ---------------------- ###
  542.  
  543. mdb10_=gdevmd10.$(OBJ) gdevegaa.$(OBJ)
  544. mdb10.dev: $(mdb10_)
  545.     .$(DS)gssetdev mdb10.dev $(mdb10_)
  546.  
  547. gdevmd10.$(OBJ): gdevpcfb.c gdevmd10.h $(GDEVPCFB)
  548.     cp gdevmd10.h gdevxxfb.h
  549.     $(CCNA) gdevpcfb
  550.     rm gdevxxfb.h
  551.     cp gdevpcfb.obj gdevmd10.obj
  552.  
  553. ###### --------- The BGI (Borland Graphics Interface) device -------- ######
  554.  
  555. bgi_=gdevbgi.$(OBJ) egavga.$(OBJ)
  556. bgi.dev: $(bgi_)
  557.     .$(DS)gssetdev bgi.dev $(bgi_)
  558.  
  559. gdevbgi.$(OBJ): gdevbgi.c $(GDEV)
  560.     $(CCNA) $*
  561.  
  562. egavga.$(OBJ): $(COMPDIR)\egavga.bgi
  563.     bgiobj egavga
  564.  
  565. ###### --------------- Memory-buffered printer devices --------------- ######
  566.  
  567. gvirtmem.$(OBJ): gvirtmem.c gvirtmem.h
  568.  
  569. # Virtual memory test program -- requires VMDEBUG
  570.  
  571. gvm.exe: gvirtmem.$(OBJ) trace.$(OBJ)
  572.     tlink /m /l $(LIBDIR)\c0$(MM) gvirtmem trace,gvm,gvm,$(LIBDIR)\c$(MM)
  573.  
  574. PDEVH=$(GDEV) gxdevmem.h gvirtmem.h gdevprn.h
  575.  
  576. # We use CCNA only because the MS-DOS version of the driver
  577. # refers to stdprn, which is non-ANSI.
  578. gdevprn.$(OBJ): gdevprn.c $(PDEVH)
  579.     $(CCNA) $*
  580.  
  581. ### ----------------- The Canon BubbleJet BJ10e device ----------------- ###
  582.  
  583. bj10e_=gdevbj10.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  584. bj10e.dev: $(bj10e_)
  585.     .$(DS)gssetdev bj10e.dev $(bj10e_)
  586.  
  587. gdevbj10.$(OBJ): gdevbj10.c $(PDEVH)
  588.  
  589. ### ------------------ The H-P DeskJet printer device ------------------ ###
  590.  
  591. # Note that this shares code with the LaserJet device (below).
  592.  
  593. deskjet_=gdevdjet.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  594. deskjet.dev: $(deskjet_)
  595.     .$(DS)gssetdev deskjet.dev $(deskjet_)
  596.  
  597. gdevdjet.$(OBJ): gdevdjet.c $(PDEVH)
  598.     $(CCA) -DLASER=0 gdevdjet.c
  599.  
  600. ### ----------------- The generic Epson printer device ----------------- ###
  601.  
  602. epson_=gdevepsn.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  603. epson.dev: $(epson_)
  604.     .$(DS)gssetdev epson.dev $(epson_)
  605.  
  606. gdevepsn.$(OBJ): gdevepsn.c $(PDEVH)
  607.  
  608. ### ------------------ The H-P LaserJet printer device ----------------- ###
  609.  
  610. # Note that this shares code with the DeskJet device (above).
  611.  
  612. laserjet_=gdevljet.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  613. laserjet.dev: $(laserjet_)
  614.     .$(DS)gssetdev laserjet.dev $(laserjet_)
  615.  
  616. gdevljet.$(OBJ): gdevdjet.c $(PDEVH)
  617.     cp gdevdjet.c gdevljet.c
  618.     $(CCA) -DLASER=1 gdevljet.c
  619.     rm gdevljet.c
  620.  
  621. ### ------------ The H-P PaintJet color printer device ----------------- ###
  622. ### Note: this driver was contributed by users:                          ###
  623. ###       please contact marc@vlsi.polymtl.ca if you have questions.     ###
  624.  
  625. ### This driver was not ready to be included in release 2.0.
  626. ### Do not attempt to use it: the files are not included in the fileset.
  627.  
  628. PJETH=$(GDEV) gdevprn.h gdevpjet.h
  629.  
  630. paintjet_=gdevpjet.$(OBJ)
  631. paintjet.dev: $(paintjet_)
  632.     .$(DS)gssetdev paintjet.dev $(paintjet_)
  633.  
  634. gdevpjet.$(OBJ): gdevpjet.c $(PJETH)
  635.  
  636. ###### ------------------ Sony frame buffer device ----------------- ######
  637.  
  638. sonyfb_=gdevsnfb.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  639. sonyfb.dev: $(sonyfb_)
  640.     .$(DS)gssetdev sonyfb.dev $(sonyfb_)
  641.  
  642. gdevsnfb.$(OBJ): gdevsnfb.c $(PDEVH)
  643.     $(CCA) gdevsnfb.c
  644.  
  645. ###### ----------------- Sony NWP533 printer device ----------------- ######
  646.  
  647. nwp533_=gdevn533.$(OBJ) gvirtmem.$(OBJ) gdevprn.$(OBJ)
  648. nwp533.dev: $(nwp533_)
  649.     .$(DS)gssetdev nwp533.dev $(nwp533_)
  650.  
  651. gdevn533.$(OBJ): gdevn533.c $(PDEVH)
  652.     $(CCA) gdevn533.c
  653.  
  654. ###### --------------------- The SunView device --------------------- ######
  655.  
  656. sunview_=gdevsun.$(OBJ)
  657. sunview.dev: $(sunview_)
  658.     .$(DS)gssetdev sunview.dev $(sunview_)
  659.  
  660. gdevsun.$(OBJ): gdevsun.c $(GDEV)
  661.  
  662. ###### ----------------------- The X11 device ----------------------- ######
  663.  
  664. x11_=gdevx.$(OBJ)
  665. x11.dev: $(x11_)
  666.     .$(DS)gssetdev x11.dev $(x11_)
  667.  
  668. ### Note: if the X11 client header libraries are not on /usr/include/X11,
  669. ### you may have to change the compilation line below to add a -I switch.
  670. ### For example, if the header files are in /usr/local/X/include/X11,
  671. ### you must add the switch -I/usr/local/X/include.
  672. gdevx.$(OBJ): gdevx.c $(GDEV) gdevx.h
  673.     $(CCA) -I/usr/local/X/include gdevx.c
  674. #    Copyright (C) 1990 Aladdin Enterprises.  All rights reserved.
  675. #    Distributed by Free Software Foundation, Inc.
  676. #
  677. # This file is part of Ghostscript.
  678. #
  679. # Ghostscript is distributed in the hope that it will be useful, but
  680. # WITHOUT ANY WARRANTY.  No author or distributor accepts responsibility
  681. # to anyone for the consequences of using it or for whether it serves any
  682. # particular purpose or works at all, unless he says so in writing.  Refer
  683. # to the Ghostscript General Public License for full details.
  684. #
  685. # Everyone is granted permission to copy, modify and redistribute
  686. # Ghostscript, but only under the conditions described in the Ghostscript
  687. # General Public License.  A copy of this license is supposed to have been
  688. # given to you along with Ghostscript so you can know your rights and
  689. # responsibilities.  It should be in a file named COPYING.  Among other
  690. # things, the copyright notice and this notice must be preserved on all
  691. # copies.
  692.  
  693. # Partial makefile for Ghostscript, common to all Unix configurations.
  694.  
  695. # This is the last part of the makefile for Unix configurations.
  696. # Since Unix make doesn't have an 'include' facility, we concatenate
  697. # the various parts of the makefile together by brute force (in tar_gs).
  698.  
  699. # -------------------------------- Library -------------------------------- #
  700.  
  701. ## The Unix platform
  702.  
  703. PLATUNIX=gp_unix.$(OBJ)
  704.  
  705. gp_unix.$(OBJ): gp_unix.c
  706.  
  707. # -------------------------- Auxiliary programs --------------------------- #
  708.  
  709. ansi2knr$(XE):
  710.     $(CC) -o ansi2knr$(XE) $(CFLAGS) ansi2knr.c
  711.  
  712. genarch$(XE): genarch.c
  713.     $(CC) -o genarch$(XE) $(CFLAGS) genarch.c
  714.  
  715. # ----------------------------- Main program ------------------------------ #
  716.  
  717. # (Dummy) tracing package
  718.  
  719. utrace.$(OBJ): utrace.c cframe_.h
  720.  
  721. # Main program
  722.  
  723. ALLUNIX=gsmain.$(OBJ) utrace.$(OBJ) $(LIB) $(PLATUNIX) $(DEVICE_OBJS)
  724.  
  725. # Library test programs
  726.  
  727. GTUNIX=gt.$(OBJ) $(ALLUNIX)
  728. gt: $(GTUNIX)
  729.     $(CC) $(CFLAGS) $(LDPLAT) -o gt $(GTUNIX) $(EXTRALIBS) -lm
  730.  
  731. # Interpreter main program
  732.  
  733. GSUNIX=gs.$(OBJ) $(INT) $(ALLUNIX)
  734. gs: $(GSUNIX) $(INT2)
  735.     $(CC) $(CFLAGS) $(LDPLAT) -o gs $(GSUNIX) $(EXTRALIBS) -lm
  736.